<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>动画</title>
    <style>
      /* 1.定义动画 */
      @keyframes move {
        /* 开始状态 */
        0% {
          transform: translate(0px);
        }
        /* 结束状态 */
        100% {
          transform: translate(1000px);
        }
      }
      .temp1 {
        width: 200px;
        height: 200px;
        background-color: pink;
        /* 调用动画 */
        animation-name: move;
        /* 持续时间 */
        animation-duration: 2s;
      }

      @keyframes move2 {
        from {
          transform: translate(0px);
        }
        to {
          transform: translate(1500px);
        }
      }
      .temp2 {
        width: 100px;
        height: 100px;
        background-color: aquamarine;
        animation-name: move2;
        animation-duration: 2s;
      }

      /* 
      里面的百分比要是整数
      里面的百分比就是 总的时间 的划分
       */
      @keyframes move3 {
        0% {
          transform: translate(0, 0);
        }
        25% {
          transform: translate(1000px, 0);
        }
        50% {
          transform: translate(1000px, 500px);
        }
        75% {
          transform: translate(0, 500px);
        }
        100% {
          transform: translate(0, 0);
        }
      }
      .temp3 {
        width: 150px;
        height: 150px;
        background-color: red;
        border-radius: 50%;
        animation-name: move3;
        animation-duration: 10s;
      }

      @keyframes move4 {
        0% {
          transform: translate(0, 0);
        }
        100% {
          transform: translate(1000px, 0);
        }
      }
      .temp4 {
        width: 100px;
        height: 100px;
        background-color: aqua;
        /* animation-name: move4;
        animation-duration: 2s; */
        /* 运动曲线 */
        /* animation-timing-function: ease; */
        /* 何时开始 */
        /* animation-delay: 1s; */
        /* 重复次数  iteration 重复的  count 次数  infinite 无限*/
        /* animation-iteration-count: infinite; */
        /* 是否反方向播放  默认的是 normal  ，alternate逆播放*/
        /* animation-direction: alternate; */
        /* 动画结束后的状态 默认的是 backwards 回到起始状态 我们还可以让它停留在结束状态 forwards */
        /* animation-fill-mode: forwards; */

        /* 动画简写属性 */
        /* name duration 一定要写 */
        animation: move4 2s ease 0s 1 alternate forwards;
      }
      .temp4:hover {
        /* 鼠标经过盒子，让这个盒子停止动画，鼠标离开就继续动画 */
        animation-play-state: paused;
      }

      .temp5 {
        font-size: 20px;
        width: 0;
        height: 30px;
        overflow: hidden;
        white-space: nowrap;
        /* background-color: pink; */
        /* steps 就是分几步来完成我们的动画 有了steps就不要再写 ease 或者 linear了 */
        animation: w 2s steps(6) forwards;
      }
      @keyframes w {
        0% {
          width: 0;
        }
        100% {
          width: 120px;
        }
      }
    </style>
  </head>
  <body>
    <!-- 
        动画的基本使用
        制作动画分为两步：
        1.先定义动画
        2.再使用(调用)动画
        1.用 keyframes 定义动画(类似定义类选择器)
          @keyframes 动画名称{
            0%{
                width:100px;
            }
            100%{
                width:200px;
            }
          }
        动画序列
           0%是动画的开始，100%是动画的完成，这样的规则就是动画序列
           在@keyframes中规定某项CSS样式，就能创建由当前样式逐渐改变为新样式的动画效果
           动画是使元素从一种样式逐渐变换为另一种样式的效果，您可以改变任意多的样式任意多的次数
           请用百分比来规定变化发生的时间，或用关键词"from"和"to"，等同于"0%"和"100%"
        
        动画简写属性
        animation: 动画属性 持续时间 运动曲线 何时开始 播放次数 是否反方向 动画起始或结束的状态

        -->
    <!-- <div class="temp1"></div> -->

    <!-- <div class="temp2"></div> -->

    <!-- <div class="temp3"></div> -->

    <!-- <div class="temp4"></div> -->

    <!-- 速度曲线步长 -->
    <div class="temp5">我在等你啊影</div>
  </body>
</html>
